【设计模式】设计模式之适配器模式

适配器模式

将一个类的接口,转换成客户期望的另一种接口。适配器就是让本来接口不兼容的类可以合作无间。


问题引例:

1、当墙上的两相插头和你的笔记本三相电源时,你会想起来什么?

2、如何分清各个部分:客户、适配器、被适配者?什么是目标接口?


问题1:

答:需要一个二相插头转三相插头的三相转接头。被笔记本三相电源使用;使用墙上的两相电源插座。

问题2:

答:从第一引例中,分析得出

-客户:笔记本三相电源插头

-适配器:二相插头转三相插头的三相转接头

-被适配者:墙上的两相插座

-目标接口:转接头上的三相插口(从客户出发,他想使用的方法)

UML图及分析过程

客户的需求是一定的,它需要三相电源;客观的现实是一定的(相对来说),它是个两相电源

推理出:需要适配器,他被别人调用的是三相电源方法;调用别人的两相电源方法;

继续推理:他的方法被别人调用,希望别人只知道他的接口,需要接口的实例;他调用别人的方法,需要别人的实例;

接着推理:客户代码不用改动,被适配者不用改动,添加一个适配器的接口(客户代码想要调用的方法),添加一个适配器(实现刚才的接口,拿到被适配者的实例,方法转接)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值